Industrial control systems used to control and monitor industrial processes often employ programmable logic controllers (PLCs) that are in turn coupled to input/output (I/O) modules that are in communication with elements or aspects of the industrial processes of interest. PLCs are special purpose computers that operate based upon stored control programs and typically read inputs from and provide outputs to the controlled industrial process based upon the logic of the control program.
PLCs differ from conventional computers in two major respects. First, PLCs operate to produce highly reliable and predictable control outputs. The architecture and programming of PLCs are designed so as to provide predictable maximum response times, as well as a reduction in errors caused by race conditions and sensitive detection of hardware and communication errors. Second, PLCs differ from conventional computers in that PLCs are highly customizable so as to fit the demands of the particular industrial processes being controlled.
Depending upon the particular industrial process being controlled, an industrial control system can take a variety of forms. In some circumstances, the industrial control system includes numerous I/O modules that are all in communication with a single PLC. In other circumstances, multiple PLCs are employed in the industrial control system. The multiple PLCs are networked together, and each PLC is in communication with its own particular associated I/O modules. Still in additional circumstances, an industrial control system can take other forms that can include, for example, other types of modules.
Although it is the PLCs of industrial control systems that primarily govern the operation of the industrial control systems and the industrial processes of interest, in a variety of circumstances it is desirable to be able to remotely monitor (and, in some instances, control) the operation of the industrial control systems and the progress of the industrial processes. Conventional industrial control systems allow for communications between the PLCs and remote human machine interfaces such as computer terminals by way of proprietary communication links or dedicated phone lines.
Given the continued development and growth of the Internet or World Wide Web (or simply the “web”) as a preferred system for allowing communications among a variety of computers and computer systems around the world, it would be particularly desirable if PLCs, I/O modules or other control devices could be remotely accessed by way of the web. However, the current structure of industrial control systems makes this difficult. Communications with the web requires certain physical hardware and software for interfacing with the web, which can be difficult and costly to add onto or implement on existing PLCs, I/O modules, and other control devices.
In particular, communication via the web typically occurs by way of the TCP/IP protocol, which allows both for the proper addressing of signals and also the packetizing of signal data into smaller amounts of data that are transmitted via the web and then reassembled upon arrival at the appropriate signal destination. The software programs employed in receiving and transmitting signals over the web by way of the TCP/IP protocol can require significant processing power and memory, which often are not available on existing PLCs, I/O modules or other control devices.
At the same time, it is often desirable to allow for direct access of individual PLCs, I/O modules and other control devices of an industrial control system rather than simply access of the industrial control system as a whole. Such individualized access is desirable insofar as the different control devices are typically performing different tasks and are of independent interest from the perspectives of monitoring and control. Consequently, the difficulty and costs of adding the necessary hardware and software to allow for web access of an industrial control system are multiplied by the number of PLCs, I/O modules and other control devices for which web access is desired.
It would therefore be advantageous if a new industrial control system could be developed that would make it possible for remote computer terminals and other remote devices to access and communicate with the industrial control system by way of the web. It would be especially advantageous if the new industrial control system could be designed so that the amount of costly hardware and software that was necessary for allowing web communications was kept to a minimum. Specifically, for example, it would be advantageous if the new industrial control system encompassing multiple PLCs, I/O modules, or other control devices did not require each of those control devices to include and process memory-intensive software relating to the handling of the TCP/IP protocol associated with web signals.
At the same time, it would be advantageous if the new industrial control system allowed for the remote computer terminals and other remote devices to access and communicate with individual PLCs, I/O modules, or other control devices of the new industrial control system having multiple such control devices, rather than simply the accessing of the industrial control system as a whole. It would be additionally advantageous if existing industrial control systems could be converted to allow for web access in the manner of the new industrial control system without significant difficulty or cost.